package ar.edu.untref.robotica.simulador;

import java.awt.Point;
import java.awt.geom.Line2D;
import java.awt.geom.Point2D;

@SuppressWarnings("serial")
public class Linea extends Line2D.Double {

	public Linea(Point posicion, Point posicion2) {

		super(posicion, posicion2);
	}

	@Override
	public boolean equals(Object obj) {

		boolean equals = false;
		if (obj instanceof Line2D.Double) {
			Point2D miPunto1 = getP1();
			Point2D otroPunto1 = ((Line2D.Double) obj).getP1();
			Point2D miPunto2 = getP1();
			Point2D otroPunto2 = ((Line2D.Double) obj).getP2();
			equals = miPunto1.getX() == otroPunto1.getX()
					&& miPunto1.getY() == otroPunto1.getY()
					&& miPunto2.getX() == otroPunto2.getX()
					&& miPunto2.getY() == otroPunto2.getY();
			equals = true;
		} else {
			equals = super.equals(obj);
		}
		return equals;
	}

	@Override
	public int hashCode() {

		return (getP1().toString() + getP2().toString()).hashCode();
	}
}
